package com.ruoyi.system.service;

import java.util.List;

import com.ruoyi.common.core.domain.R;
import com.ruoyi.system.domain.WGood;
import com.ruoyi.system.domain.WGoodsRecords;
import com.ruoyi.system.domain.vo.WGoodVO;

/**
 * 物品Service接口
 * 
 * @author ruoyi
 * @date 2021-12-05
 */
public interface IWGoodService 
{
	
	/**
	 * 处理物品的 增加  减少库存
	 * 
	 * `is_in` int(4) DEFAULT '1' COMMENT '出入库，  1.使用（生产使用）  2.盘点  3入库  4退回 ',
  `change_number` int(4) DEFAULT NULL COMMENT '变化数量',
  `in_type` int(4) NOT NULL DEFAULT '0' COMMENT '出入库类型（ 1 出库 2入库） 0代表处理锁定库存的或者 不动库存的',
	 * @param wGoodsRecords
	 */
    public void dealWGood(WGoodsRecords wGoodsRecords);
    /**
     * 查询物品
     * 
     * @param id 物品主键
     * @return 物品
     */
    public WGood selectWGoodById(Long id);
    public WGoodVO selectWGoodByIdNew(Long id);

    /**
     * 查询物品列表
     * 
     * @param wGood 物品
     * @return 物品集合
     */
    public List<WGoodVO> selectWGoodList(WGoodVO wGood);

    /**
     * 新增物品
     * 
     * @param wGood 物品
     * @return 结果
     */
    public int insertWGood(WGood wGood);

    /**
     * 修改物品
     * 
     * @param wGood 物品
     * @return 结果
     */
    public int updateWGood(WGood wGood);


    /**
     * 删除物品信息
     * 
     * @param id 物品主键
     * @return 结果
     */
    public R delete(Long id);
}
